6.1 `--add-dir` - 添加额外的工作目录

3 分钟阅读

--add-dir 标志允许您添加额外的工作目录供 Claude Code 访问。这在您需要让 Claude Code 访问项目外的文件或目录时非常有用。

标志语法#

bash
claude --add-dir <path> [其他选项]

功能描述#

--add-dir 标志会:

  1. 验证指定的路径是否存在为目录
  2. 将该目录添加到 Claude Code 可访问的工作目录列表
  3. 允许 Claude Code 读取和操作该目录中的文件

使用示例#

基本用法#

bash
claude --add-dir ../apps

添加 ../apps 目录到工作目录。

添加多个目录#

bash
claude --add-dir ../apps ../lib

添加多个目录到工作目录。

绝对路径#

bash
claude --add-dir /absolute/path/to/directory

使用绝对路径添加目录。

结合其他标志#

bash
claude --add-dir ../src --add-dir ../tests "分析整个项目"

添加多个目录并立即开始分析项目。

使用场景#

1. 多模块项目#

bash
claude --add-dir ../frontend --add-dir ../backend

让 Claude Code 访问前端和后端模块。

2. 共享库访问#

bash
claude --add-dir ../shared-lib

让 Claude Code 访问共享的库代码。

3. 测试目录访问#

bash
claude --add-dir ./tests

让 Claude Code 访问测试目录和文件。

4. 配置文件访问#

bash
claude --add-dir ../config

让 Claude Code 访问配置文件。

路径验证#

--add-dir 标志会验证每个路径:

  • 存在性检查:确保路径存在
  • 目录检查:确保路径是目录,不是文件
  • 可访问性检查:确保路径可读可访问 如果验证失败,会显示错误信息。

注意事项#

  1. 路径存在:指定的路径必须存在,否则会报错
  2. 目录类型:路径必须是目录,不能是文件
  3. 权限要求:需要有读取该目录的权限
  4. 相对路径:相对路径是相对于当前工作目录
  5. 多个目录:可以多次使用 --add-dir 添加多个目录
  6. 路径分隔符:在 Windows 系统中可以使用反斜杠 \ 或正斜杠 /

最佳实践#

  1. 使用相对路径:优先使用相对路径,提高可移植性
  2. 明确添加:只添加实际需要的目录
  3. 组织结构:保持项目结构清晰,便于添加目录
  4. 权限管理:确保添加的目录有适当的权限
  5. 文档记录:记录添加的目录及其用途

常见问题#

Q: 可以添加文件吗?#

A: 不可以,--add-dir 只能添加目录。要访问特定文件,可以在对话中直接提及。

Q: 添加的目录会持久化吗?#

A: 不会,--add-dir 只对当前会话有效。要持久化,请在配置文件中设置。

Q: 可以添加网络路径吗?#

A: 不可以,--add-dir 只能添加本地文件系统路径。

Q: 添加目录的数量有限制吗?#

A: 理论上没有限制,但添加过多目录可能影响性能。

相关标志#

  • --model:设置会话模型
  • --verbose:启用详细日志记录
  • /help:显示可用命令列表

实际应用示例#

多项目工作流#

shell
#!/bin/bash # 在多个项目目录中工作 projects=("project-a" "project-b" "project-c") for project in "${projects[@]}"; do echo "在 $project 中工作" cd "/path/to/$project" claude --add-dir ../shared-lib "处理 $project" done

开发环境配置#

bash
#!/bin/bash # 配置开发环境 claude \ --add-dir ./src \ --add-dir ./tests \ --add-dir ./config \ --add-dir ../shared \ "配置开发环境"

标记本节教程为已读

记录您的学习进度,方便后续查看。